<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>WebCL: Main Page</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">WebCL
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="dynsections.js"></script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">WebCL Documentation</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>WebCL provides JavaScript bindings to OpenCL API. The API is made available for JavaScript code running in web page context.</p>
<p><b>Warning</b>: This is an experimental implementation of ongoing research work. Any user is adviced for extreme carefulness. The current implementation may introduce severe risks for security and/or stability of any related application or system. USE AT YOUR OWN RISK.</p>
<h2><a class="anchor" id="openclintro"></a>
OpenCL</h2>
<p>OpenCL (Open Computing Language) is an open standard for parallel programming of heterogeneous platforms consisting of CPUs, GPUs, and other processors. OpenCL is being created by <a href="http://www.khronos.org/">The Khronos Group</a> with the participation of many industry-leading companies and institutions.</p>
<h2><a class="anchor" id="webclintro"></a>
Nokia WebCL Firefox extension</h2>
<p>The Nokia WebCL pilot implementation provides a C++ Mozilla XPCOM component designed to be used as a Firefox extension. More details are available on the <a href="http://webcl.nokiaresearch.com/">project home page</a>. The source code is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with the sources, You can obtain one at <a href="http://mozilla.org/MPL/2.0/">http://mozilla.org/MPL/2.0/</a>.</p>
<p>This documentation describes the interfaces provided by the Nokia WebCL implementation. The goal of this documentation is not to provide an exhaustive documentation for OpenCL functionality but the differences to the WebCL approach. The Full OpenCL documentation is available on The Khronos Group <a href="http://www.khronos.org/opencl/">OpenCL web site</a>.</p>
<h2><a class="anchor" id="webclapi"></a>
WebCL API</h2>
<p>The Nokia WebCL API was designed to maintain resemblance to the OpenCL C API in order to make it easy to take advantage of existing OpenCL examples and tutorials. Some deviations were necessary to make the API more appealing to a JavaScript developer and to overcome certain technical obstacles such as those relating to language syntax and resource management.</p>
<p>Function and constant naming generally follows OpenCL C API. However, WebCL API is object oriented, meaning that functions related to certain OpenCL handle are accessed as members of a WebCL object. The "cl" prefix of OpenCL functions is dropped as namespace collisions are handled by the class mechanism. For example, <a class="el" href="interfaceIWebCLContext.html" title="IWebCLContext interface abstracts a WebCL context.">IWebCLContext</a> interface covers the functionality related to OpenCL context on OpenCL API. Functions, such as clCreateBuffer(ctx, ...), become member functions, such as ctx.createBuffer(...) .</p>
<p>Examples of WebCL applications are available on the project home page.</p>
<p>The WebCL API is under standardization at <a href="https://cvs.khronos.org/svn/repos/registry/trunk/public/webcl/spec/latest/index.html">Khronos</a>. The WebCL API provided by the Nokia WebCL pilot was designed before the standardization process started and differs from the working draft in certain areas.</p>
<p>Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).</p>
<p>OpenCL is a trademark of Apple Inc. </p>
</div></div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Fri Sep 7 2012 12:59:51 for WebCL by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
